#include <stdio.h>
#include <string.h>
#include<stdlib.h>
#include<ctype.h>
#define MAX 5
#define LEN 10
int max(int x,int y) {
    int z;
    z=x>y?x:y;
    return z;
}
int sgm(int n) {
    if(n==1) {
        return 1;
    }else {
        return sgm(n-1)+n;
    }
}
void pts(int n) {
    if(n>=1) {
        pts(n-1);
    }
    for (int i = 0; i < n; ++i) {
        printf("%c",'*');
    }
    printf("\n");
}
int f(int n) {
    if(n==1) {
        return 1;
    }else {
        return 2*(f(n-1)+1);
    }
}
int main(void) {
    // printf("Hello, World!\n");
    // printf("%d\n",strcmp("abcd","ABCD"));
    // printf("%d\n",strcmp("abcd","abxy"));
    // char *str1="abc";
    // printf("%d\n",strlen("abc"));
    // printf("%d\n",strlen(str1));
    // printf("%s\n",str1);
    // printf("%d\n",toupper('a'));
    // char name[LEN];
    // char list[MAX][LEN]={"zhang","wang","li","Tan","Ling"};
    // int flag=0;
    // printf("Enter your name:");
    // gets(name);
    // for (int i = 0; i < MAX; ++i) {
    //     if(strcmp(list[i],name)==0) {
    //         flag=1;
    //     }
    // }
    // if(flag==1) {
    //     printf("%s是我们的班级的",name);
    // }else {
    //     printf("%s不是我们班级的",name);
    // }
    // int x=max(2,3);
    // // printf("%d",x);
    // int n;
    // scanf("%d",&n);
    // int x=sgm(n);
    // printf("%d",x);
    // int n;
    // scanf("%d",&n);
    // pts(n);
    int n;
    scanf("%d",&n);
    int x=f(n);
    printf("%d",x);
    return 0;
}
